Skip to main content

在触发器中使用分页

默认情况下,Zapier 触发器会获取新数据或最近更新的数据来启动 Zap,并只需查找最近添加的项。触发器也可以用于填充动态下拉菜单字段,在这种情况下,需要查找所有可能的项来填充该字段。

用于填充动态下拉菜单字段的这些触发器通常会检索到数十或数百个项。许多 API 允许将结果分成多个页面。第一次 API 调用会返回第一组结果——通常为 20 到 100 项。这些结果中的项将作为动态下拉菜单字段中的选项出现。如果你想要更多条目,可以进行新的 API 调用,请求第 2 页,并获取下一组结果,依次迭代页面,直到 API 发送所有可能的选项。

Platform UI vs CLI comparison

1. 启用分页

  1. 登录 Platform UI
  2. 选择你的 集成
  3. 在左侧边栏的 Build 部分,点击应为动态下拉菜单字段提供动力的触发器。这可以是现有的触发器,也可以是设置为 Hidden 的新触发器(如果它的唯一目的是为动态下拉菜单字段提供动力)。
  4. 转到 API Configuration 选项卡。
  5. Configure your API Request 部分,选中 Support Paging 复选框,该选项仅适用于构建为为动态下拉菜单提供动力的触发器。这将启用 Zapier 的 bundle.meta.page 值,用于跟踪 Zapier 已加载的页面,并在用户界面 Zap 编辑器的下拉菜单中添加 Load more 选项。

Platform UI vs CLI comparison

  1. API Endpoint 部分,点击 Show Options,以在 API 调用中包含 bundle.meta.page,因为 Zapier 不会自动包含它。然后,为你的 API 的分页选项添加一个新的 URL 参数(或者,如果你的 API 在 HTTP 标头中期望分页值,则可选择添加到 HTTP 标头)。在左侧使用你 API 的页面请求字段名称,在右侧使用 {{bundle.meta.page}},以让 Zapier 拉取正确的页面值。

请注意,Zapier 的 bundle.meta.page 值使用基于零的编号。Zapier 第一次从你的 API 获取数据时,会使用 page 值 0,第二次使用 1,依此类推。如果你的 API 期望第一次 API 调用请求 page 1,第二次请求 page 2,依此类推,则需要切换到代码模式,并在 bundle.meta.page 上添加 + 1。因此,在代码中的分页配置如下(用你 API 用于分页的正确字段名称替换 page):

'page': bundle.meta.page + 1

Platform UI vs CLI comparison

  1. 在 Platform UI 中测试 API 请求,并检查 HTTP 选项卡,以查看 Zapier 发送给你的应用的请求。Zapier 默认会在 Request Params 部分下显示 page=0 值(或你 API 中用于页面的正确术语),或者如果您自定义了页面请求从 1 开始,则显示 page=1

Platform UI vs CLI comparison

2. 测试分页

要测试你的分页触发器:

  1. 在 Platform UI 中构建一个操作,该操作在动态下拉菜单字段中使用此触发器。

Platform UI vs CLI comparison

  1. 在用户界面的 Zap 编辑器中创建一个新的 Zap,该 Zap 使用带有动态下拉菜单字段的操作。点击下拉字段,滚动到末尾,然后点击 Load More 按钮。重复此操作,直到加载到最后选项,此时会显示 We couldn't find any more choices 提示。

Platform UI vs CLI comparison